//配置ajax 的基础路径
axios.defaults.baseURL = "http://api-breakingnews-web.itheima.net";

//请求拦截器
axios.interceptors.request.use(
    function (config) {
        //给 /my 开头的请求添加 身份认证信息
        //console.log(config);
        //判断,只要包含 /my/ 就添加token
        //alert(config.url);
        if (config.url.includes("/my/")) {
            config.headers.Authorization = localStorage.getItem("token");
        }
        //必须返回 config
        return config;
    },
    function (error) {
        //这个语法后面讲
        return Promise.reject(error);
    }
);

//响应拦截器
axios.interceptors.response.use(
    function (response) {
        //处理响应内容!!
        //如果身份认证失败,那么就跳转到登陆页面
        let obj = response.data;
        //console.log(obj);
        if (obj.message === "身份认证失败！") {
            //页面跳转
            location.href = "/login.html";
            //清除token
            localStorage.removeItem("token");
        }

        //下面的代码,可以让axios 中的范湖数据和jquery 中的ajax 返回的数据一样
        //response = response.data
        //返回响应对象
        return response;
    },
    function (error) {
        return Promise.reject(error);
    }
);

//格式化日期方法:
function dateFormat(str) {
    //console.log(str);
    let dt = new Date(str);
    let yy = padZero(dt.getFullYear());
    let mm = padZero(dt.getMonth() + 1);
    let dd = padZero(dt.getDate());
    let h = padZero(dt.getHours());
    let m = padZero(dt.getMinutes());
    let s = padZero(dt.getSeconds());
    return `${yy}-${mm}-${dd} ${h}:${m}:${s}`;
}

//补零函数
function padZero(n) {
    return n < 10 ? '0' + n : n
}
